package com.kaili.basic.service.impl;

import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.kaili.basic.mapper.AlarmSetMapper;
import com.kaili.basic.pojo.dto.MdmAlarmSetPageListDto;
import com.kaili.basic.pojo.entity.MdmAlarmSetEntity;
import com.kaili.basic.pojo.vo.MdmAlarmSetPageListVo;
import com.kaili.basic.pojo.vo.MdmAlarmSetVo;
import com.kaili.basic.service.IMdmAlarmSetService;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.List;

/**
 * @Desc: MdmAlarmServiceImpl
 * @author: jianfeng
 * @Time: 2019/7/24 14:30
 * @Copyright: © 2018 杭州凯立通信有限公司 版权所有
 * @Warning: 本内容仅限于公司内部传阅, 禁止外泄或用于其它商业目的
 */
@Service
public class AlarmSetServiceImpl extends ServiceImpl<AlarmSetMapper, MdmAlarmSetEntity> implements IMdmAlarmSetService {


    /**
     * @param entity
     * @return boolean
     * @Desc: 告警设置
     * @author: jianfeng
     * @Time: 2019/8/1 17:23
     */
    @Override
    public boolean updateBatch(List<MdmAlarmSetEntity> entity) {
        this.updateBatchById(entity);
        return true;
    }

    /**
     * @param id
     * @return com.kaili.basic.pojo.vo.MdmAlarmSetVo
     * @Desc: 根据id查询告警项
     * @author: jianfeng
     * @Time: 2019/8/1 18:50
     */
    @Override
    public MdmAlarmSetVo queryById(Integer id) {
        List<MdmAlarmSetVo> list = baseMapper.queryById(new HashMap<String, Object>(2) {{
            put("id", id);
        }});
        if (list != null && list.size() > 0) {
            return list.get(0);
        }
        return null;
    }

    /**
    * @Desc:  查询所有告警项
    * @author: jianfeng
    * @Time: 2019/8/2 8:49
    * @param
    * @return com.kaili.basic.pojo.vo.MdmAlarmSetVo
    */
    @Override
    public List<MdmAlarmSetVo> queryList() {
        return baseMapper.queryList();
    }

    /**
    * @Desc:  分页查询告警项
    * @author: jianfeng
    * @Time: 2019/8/2 11:31
    * @param page
    * @param alarmSetPageListDto
    * @return com.baomidou.mybatisplus.plugins.Page<com.kaili.basic.pojo.vo.MdmAlarmSetPageListVo>
    */
    @Override
    public Page<MdmAlarmSetPageListVo> queryPageList(Page<MdmAlarmSetPageListVo> page, MdmAlarmSetPageListDto alarmSetPageListDto) {
        List<MdmAlarmSetPageListVo> list=baseMapper.queryPageList(page,alarmSetPageListDto);
        for (MdmAlarmSetPageListVo s:list){
            if (s.getAlarmName().equals("低版本")){
                s.setAlarmContent("低版本："+"ROM版本："+s.getRomVcontent()+"；助手版本："+s.getAideContent());
            }
            if (s.getAlarmName().equals("低电量")){
                s.setAlarmContent("低电量："+s.getRomVcontent()+"%");
            }
            if (s.getAlarmName().equals("低内存")){
                s.setAlarmContent("低内存："+s.getRomVcontent()+"%");
            }
            if (s.getAlarmName().equals("高CPU")){
                s.setAlarmContent("高CPU："+s.getRomVcontent()+"%");
            }
            if (s.getAlarmName().equals("离线")){
                s.setAlarmContent("离线："+s.getRomVcontent()+"天");
            }
            if (s.getAlarmName().equals("SIM卡变更")){
                s.setAlarmContent("SIM卡变更");
            }
            if (s.getAlarmName().equals("SD卡变更")){
                s.setAlarmContent("SD卡变更");
            }
            if (s.getAlarmName().equals("越狱/ROOT")){
                s.setAlarmContent("越狱/ROOT");
            }
            if (s.getAlarmName().equals("非法关机")){
                s.setAlarmContent("非法关机");
            }
            if (s.getAlarmName().equals("超使用范围")){
                s.setAlarmContent("超使用范围");
            }
        }

        return page.setRecords(list);
    }

    /**
    * @Desc:  导出
    * @author: jianfeng
    * @Time: 2019/8/2 11:32
    * @param alarmSetPageListDto
    * @return java.util.List<com.kaili.basic.pojo.vo.MdmAlarmSetPageListVo>
    */
    @Override
    public List<MdmAlarmSetPageListVo> export(MdmAlarmSetPageListDto alarmSetPageListDto) {
        List<MdmAlarmSetPageListVo> list=baseMapper.queryPageList(alarmSetPageListDto);
        for (MdmAlarmSetPageListVo s:list){
            if (s.getAlarmName().equals("低版本")){
                s.setAlarmContent("低版本："+"ROM版本："+s.getRomVcontent()+"；助手版本："+s.getAideContent());
            }
            if (s.getAlarmName().equals("低电量")){
                s.setAlarmContent("低电量："+s.getRomVcontent()+"%");
            }
            if (s.getAlarmName().equals("低内存")){
                s.setAlarmContent("低内存："+s.getRomVcontent()+"%");
            }
            if (s.getAlarmName().equals("高CPU")){
                s.setAlarmContent("高CPU："+s.getRomVcontent()+"%");
            }
            if (s.getAlarmName().equals("离线")){
                s.setAlarmContent("离线："+s.getRomVcontent()+"天");
            }
            if (s.getAlarmName().equals("SIM卡变更")){
                s.setAlarmContent("SIM卡变更");
            }
            if (s.getAlarmName().equals("SD卡变更")){
                s.setAlarmContent("SD卡变更");
            }
            if (s.getAlarmName().equals("越狱/ROOT")){
                s.setAlarmContent("越狱/ROOT");
            }
            if (s.getAlarmName().equals("非法关机")){
                s.setAlarmContent("非法关机");
            }
            if (s.getAlarmName().equals("超使用范围")){
                s.setAlarmContent("超使用范围");
            }
        }


        return list;
    }


}
